1. Field of the Invention
The present invention relates to the JAVA platform Micro Edition (ME) and, more particularly, to a dispatch API that permits MIDlets to initiate dispatch calls.
2. Description of the Related Art
JAVA platform Micro Edition (JAVA ME) is a collection of JAVA Application Program Interfaces (APIs) for the development of software for resource-constrained devices, such as mobile phones, personal data assistants (PDAs), navigation devices, and the like. JAVA ME devices implement a profile, such as the Mobile Information Device Profile (MIDP), which is part of the JAVA ME specification. Application programs written for JAVA ME virtual machines are called MIDlets. MIDlets are often used to create games and applications for mobile phones.
MIDlet developers often want to be able to write MIDlets that utilize low level capabilities of the host device. Providing access to device resources, however, requires a level of trust between the executing application, the device, and the user. MIDP handles trust issues using protection domains, which are a collection of permissions that can be granted to MIDlets. Standard protection domains include a trusted domain and an untrusted domain. When a MIDlet is installed, that MIDlet is bound to an appropriate protection domain.
One way to establish a level of trust for a MIDlet is to sign the MIDlet using a X.509 based certificate. That is, a MIDlet designer can obtain a public key (PKI) that is used to authenticate the MIDlet upon installation. A number of different certification authorities, such as VERISIGN, GEOTRUST, THAWTE, and the like, exist who can provide public keys that permit MIDlets to be installed within a trusted domain. Unfortunately, different mobile phones behave differently and no current signing authority appears to work seamlessly for every device. Thus, MIDlet designers are left with uncertainty as to whether their MIDlets will be trusted or not, which can prevent these developers from attempting to utilize resources only available when the MIDlet is part of a trusted domain.
Even when a MIDlet designer is granted rights to a trusted domain, many resources of the device are not currently accessible. For example, at present no JAVA ME APIs exist that support Push-To-Talk or dispatch capabilities.